1. Statement of the Technical Field
The present invention relates to the field of data visualization and more particularly, to tree-map visualization.
2. Description of the Related Art
As computer technology advances, computing systems have undertaken the management and processing of even larger data systems. With data systems ranging from massive standalone databases to vast distributed networks, oftentimes the limiting factor in analyzing the state of a given system rests not with computing resources, but with the human operator. Specifically, though the computing system may aggregate vast quantities of data in near real-time, in the end, a human being must visualize the compilation of data to draw effective conclusions from the visualization. Yet, the ability of the end user to digest compiled information varies inversely with the amount of data presented to the end user. Where the amount of compiled data becomes excessive, it can be nearly impossible for a human being to adequately analyze the data.
In an effort to address the foregoing difficulties, tree-map visualization methods have been developed. Initially proposed by Brian Johnson and Ben Shneiderman in the seminal paper, Johnson et al., Tree-Maps: A Space-Filling Approach to the Visualization of Hierarchical Information Structures, Dept. of Computer Science & Human-interaction Laboratory (University of Maryland June 1991), tree-map visualization techniques map “hierarchical information to a rectangular 2-D display in a space-filling manner” in which the entirety of a designated display space is utilized. Additionally, “[i]nteractive control allows users to specify the presentation of both structural (depth bounds, etc.) and content (display properties such as color mappings) information.”
Notably, tree-map visualization techniques can be compared in a contrasting manner to traditional static methods of displaying hierarchically structured information. According to conventional static methods, a substantial portion of hierarchical information can be hidden from user view to accommodate the view of the hierarchy itself. Alternatively, the entire hierarchy can be visually represented, albeit vast amounts of display space can be obscured, hence wasted simply to accommodate the structure without regard to the hierarchical data in the hierarchy itself.
In the tree-map visualization technique, however, sections of the hierarchy containing more important information can be allocated more display space while portions of the hierarchy which are deemed less important to the specific task at hand can be allocated less space. More particularly, in operation tree-maps partition the display space into a collection of rectangular bounding boxes representing the tree structure. The drawing of nodes within the bounding boxes can be entirely dependent on the content of the nodes, and can be interactively controlled. Since the display size is user controlled, the drawing size of each node varies inversely with the size of the tree, for instance the number of nodes. Thus, trees having many nodes can be displayed and manipulated in a fixed display space.
To date, the tree-map visualization technique has been limited to displaying strictly hierarchical data. This is a significant limitation that impedes the usefulness of the tree-map in many circumstances. For example, where a tree-map is used to visualize a set of computing resources which are interconnected to provide business value in a network, an observer can view the individual components of the network, but the relationship will not be as apparent. Specifically, though the status of any particular component in the tree-map can be displayed when a pointing device falls within proximity to the representation of the component in the tree-map, the relationship between the component and other components represented in the tree-map cannot be so readily recognized.
Lacking an awareness of the relationship of node representations in a tree-map can impede the “big picture” analysis of the overall system represented by the tree-map. For example, where in the example of computing resources a client node representation indicates a failure status, it will not be apparent that a related server also may have failed. Of course, where the server managing the client also has failed, it is likely that the server has caused the failure of the client. Yet, the reality of the circumstance cannot be ascertained from the tree-map representation of the computing system incorporating both the client and the server.